home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / Issue46 / ADO / ADODB_TLB.pas next >
Encoding:
Pascal/Delphi Source File  |  1999-04-01  |  78.3 KB  |  1,728 lines

  1. unit ADODB_TLB;
  2.  
  3. // ************************************************************************ //
  4. // WARNING                                                                  //
  5. // -------                                                                  //
  6. // The types declared in this file were generated from data read from a     //
  7. // Type Library. If this type library is explicitly or indirectly (via      //
  8. // another type library referring to this type library) re-imported, or the //
  9. // 'Refresh' command of the Type Library Editor activated while editing the //
  10. // Type Library, the contents of this file will be regenerated and all      //
  11. // manual modifications will be lost.                                       //
  12. // ************************************************************************ //
  13.  
  14. // PASTLWTR : $Revision:   1.11.1.75  $
  15. // File generated on 01/04/99 11:35:22 from Type Library described below.
  16.  
  17. // ************************************************************************ //
  18. // Type Lib: C:\PROGRAM FILES\COMMON FILES\SYSTEM\ADO\MSADO15.DLL
  19. // IID\LCID: {00000200-0000-0010-8000-00AA006D2EA4}\0
  20. // Helpfile: 
  21. // HelpString: Microsoft ActiveX Data Objects 2.0 Library
  22. // Version:    2.0
  23. // ************************************************************************ //
  24.  
  25. interface
  26.  
  27. uses Windows, ActiveX, Classes, Graphics, OleCtrls, StdVCL;
  28.  
  29. // *********************************************************************//
  30. // GUIDS declared in the TypeLibrary. Following prefixes are used:      //
  31. //   Type Libraries     : LIBID_xxxx                                    //
  32. //   CoClasses          : CLASS_xxxx                                    //
  33. //   DISPInterfaces     : DIID_xxxx                                     //
  34. //   Non-DISP interfaces: IID_xxxx                                      //
  35. // *********************************************************************//
  36. const
  37.   LIBID_ADODB: TGUID = '{00000200-0000-0010-8000-00AA006D2EA4}';
  38.   IID__Collection: TGUID = '{00000512-0000-0010-8000-00AA006D2EA4}';
  39.   IID__DynaCollection: TGUID = '{00000513-0000-0010-8000-00AA006D2EA4}';
  40.   IID__ADO: TGUID = '{00000534-0000-0010-8000-00AA006D2EA4}';
  41.   IID_Properties: TGUID = '{00000504-0000-0010-8000-00AA006D2EA4}';
  42.   IID_Property_: TGUID = '{00000503-0000-0010-8000-00AA006D2EA4}';
  43.   IID_Error: TGUID = '{00000500-0000-0010-8000-00AA006D2EA4}';
  44.   IID_Errors: TGUID = '{00000501-0000-0010-8000-00AA006D2EA4}';
  45.   IID__Command15: TGUID = '{00000508-0000-0010-8000-00AA006D2EA4}';
  46.   IID__Connection15: TGUID = '{00000515-0000-0010-8000-00AA006D2EA4}';
  47.   IID__Connection: TGUID = '{00000550-0000-0010-8000-00AA006D2EA4}';
  48.   IID__Recordset15: TGUID = '{0000050E-0000-0010-8000-00AA006D2EA4}';
  49.   IID__Recordset: TGUID = '{0000054F-0000-0010-8000-00AA006D2EA4}';
  50.   IID_Fields15: TGUID = '{00000506-0000-0010-8000-00AA006D2EA4}';
  51.   IID_Fields: TGUID = '{0000054D-0000-0010-8000-00AA006D2EA4}';
  52.   IID_Field: TGUID = '{0000054C-0000-0010-8000-00AA006D2EA4}';
  53.   IID__Parameter: TGUID = '{0000050C-0000-0010-8000-00AA006D2EA4}';
  54.   IID_Parameters: TGUID = '{0000050D-0000-0010-8000-00AA006D2EA4}';
  55.   IID__Command: TGUID = '{0000054E-0000-0010-8000-00AA006D2EA4}';
  56.   IID_ConnectionEventsVt: TGUID = '{00000402-0000-0010-8000-00AA006D2EA4}';
  57.   IID_RecordsetEventsVt: TGUID = '{00000403-0000-0010-8000-00AA006D2EA4}';
  58.   DIID_ConnectionEvents: TGUID = '{00000400-0000-0010-8000-00AA006D2EA4}';
  59.   DIID_RecordsetEvents: TGUID = '{00000266-0000-0010-8000-00AA006D2EA4}';
  60.   IID_ADOConnectionConstruction15: TGUID = '{00000516-0000-0010-8000-00AA006D2EA4}';
  61.   IID_ADOConnectionConstruction: TGUID = '{00000551-0000-0010-8000-00AA006D2EA4}';
  62.   CLASS_Connection: TGUID = '{00000514-0000-0010-8000-00AA006D2EA4}';
  63.   IID_ADOCommandConstruction: TGUID = '{00000517-0000-0010-8000-00AA006D2EA4}';
  64.   CLASS_Command: TGUID = '{00000507-0000-0010-8000-00AA006D2EA4}';
  65.   CLASS_Recordset: TGUID = '{00000535-0000-0010-8000-00AA006D2EA4}';
  66.   IID_ADORecordsetConstruction: TGUID = '{00000283-0000-0010-8000-00AA006D2EA4}';
  67.   IID_Field15: TGUID = '{00000505-0000-0010-8000-00AA006D2EA4}';
  68.   CLASS_Parameter: TGUID = '{0000050B-0000-0010-8000-00AA006D2EA4}';
  69.  
  70. // *********************************************************************//
  71. // Declaration of Enumerations defined in Type Library                  //
  72. // *********************************************************************//
  73. // CursorTypeEnum constants
  74. type
  75.   CursorTypeEnum = TOleEnum;
  76. const
  77.   adOpenUnspecified = $FFFFFFFF;
  78.   adOpenForwardOnly = $00000000;
  79.   adOpenKeyset = $00000001;
  80.   adOpenDynamic = $00000002;
  81.   adOpenStatic = $00000003;
  82.  
  83. // CursorOptionEnum constants
  84. type
  85.   CursorOptionEnum = TOleEnum;
  86. const
  87.   adHoldRecords = $00000100;
  88.   adMovePrevious = $00000200;
  89.   adAddNew = $01000400;
  90.   adDelete = $01000800;
  91.   adUpdate = $01008000;
  92.   adBookmark = $00002000;
  93.   adApproxPosition = $00004000;
  94.   adUpdateBatch = $00010000;
  95.   adResync = $00020000;
  96.   adNotify = $00040000;
  97.   adFind = $00080000;
  98.  
  99. // LockTypeEnum constants
  100. type
  101.   LockTypeEnum = TOleEnum;
  102. const
  103.   adLockUnspecified = $FFFFFFFF;
  104.   adLockReadOnly = $00000001;
  105.   adLockPessimistic = $00000002;
  106.   adLockOptimistic = $00000003;
  107.   adLockBatchOptimistic = $00000004;
  108.  
  109. // ExecuteOptionEnum constants
  110. type
  111.   ExecuteOptionEnum = TOleEnum;
  112. const
  113.   adOptionUnspecified = $FFFFFFFF;
  114.   adAsyncExecute = $00000010;
  115.   adAsyncFetch = $00000020;
  116.   adAsyncFetchNonBlocking = $00000040;
  117.   adExecuteNoRecords = $00000080;
  118.  
  119. // ConnectOptionEnum constants
  120. type
  121.   ConnectOptionEnum = TOleEnum;
  122. const
  123.   adConnectUnspecified = $FFFFFFFF;
  124.   adAsyncConnect = $00000010;
  125.  
  126. // ObjectStateEnum constants
  127. type
  128.   ObjectStateEnum = TOleEnum;
  129. const
  130.   adStateClosed = $00000000;
  131.   adStateOpen = $00000001;
  132.   adStateConnecting = $00000002;
  133.   adStateExecuting = $00000004;
  134.   adStateFetching = $00000008;
  135.  
  136. // CursorLocationEnum constants
  137. type
  138.   CursorLocationEnum = TOleEnum;
  139. const
  140.   adUseNone = $00000001;
  141.   adUseServer = $00000002;
  142.   adUseClient = $00000003;
  143.   adUseClientBatch = $00000003;
  144.  
  145. // DataTypeEnum constants
  146. type
  147.   DataTypeEnum = TOleEnum;
  148. const
  149.   adEmpty = $00000000;
  150.   adTinyInt = $00000010;
  151.   adSmallInt = $00000002;
  152.   adInteger = $00000003;
  153.   adBigInt = $00000014;
  154.   adUnsignedTinyInt = $00000011;
  155.   adUnsignedSmallInt = $00000012;
  156.   adUnsignedInt = $00000013;
  157.   adUnsignedBigInt = $00000015;
  158.   adSingle = $00000004;
  159.   adDouble = $00000005;
  160.   adCurrency = $00000006;
  161.   adDecimal = $0000000E;
  162.   adNumeric = $00000083;
  163.   adBoolean = $0000000B;
  164.   adError = $0000000A;
  165.   adUserDefined = $00000084;
  166.   adVariant = $0000000C;
  167.   adIDispatch = $00000009;
  168.   adIUnknown = $0000000D;
  169.   adGUID = $00000048;
  170.   adDate = $00000007;
  171.   adDBDate = $00000085;
  172.   adDBTime = $00000086;
  173.   adDBTimeStamp = $00000087;
  174.   adBSTR = $00000008;
  175.   adChar = $00000081;
  176.   adVarChar = $000000C8;
  177.   adLongVarChar = $000000C9;
  178.   adWChar = $00000082;
  179.   adVarWChar = $000000CA;
  180.   adLongVarWChar = $000000CB;
  181.   adBinary = $00000080;
  182.   adVarBinary = $000000CC;
  183.   adLongVarBinary = $000000CD;
  184.   adChapter = $00000088;
  185.   adFileTime = $00000040;
  186.   adDBFileTime = $00000089;
  187.   adPropVariant = $0000008A;
  188.   adVarNumeric = $0000008B;
  189.  
  190. // FieldAttributeEnum constants
  191. type
  192.   FieldAttributeEnum = TOleEnum;
  193. const
  194.   adFldUnspecified = $FFFFFFFF;
  195.   adFldMayDefer = $00000002;
  196.   adFldUpdatable = $00000004;
  197.   adFldUnknownUpdatable = $00000008;
  198.   adFldFixed = $00000010;
  199.   adFldIsNullable = $00000020;
  200.   adFldMayBeNull = $00000040;
  201.   adFldLong = $00000080;
  202.   adFldRowID = $00000100;
  203.   adFldRowVersion = $00000200;
  204.   adFldCacheDeferred = $00001000;
  205.   adFldNegativeScale = $00004000;
  206.   adFldKeyColumn = $00008000;
  207.  
  208. // EditModeEnum constants
  209. type
  210.   EditModeEnum = TOleEnum;
  211. const
  212.   adEditNone = $00000000;
  213.   adEditInProgress = $00000001;
  214.   adEditAdd = $00000002;
  215.   adEditDelete = $00000004;
  216.  
  217. // RecordStatusEnum constants
  218. type
  219.   RecordStatusEnum = TOleEnum;
  220. const
  221.   adRecOK = $00000000;
  222.   adRecNew = $00000001;
  223.   adRecModified = $00000002;
  224.   adRecDeleted = $00000004;
  225.   adRecUnmodified = $00000008;
  226.   adRecInvalid = $00000010;
  227.   adRecMultipleChanges = $00000040;
  228.   adRecPendingChanges = $00000080;
  229.   adRecCanceled = $00000100;
  230.   adRecCantRelease = $00000400;
  231.   adRecConcurrencyViolation = $00000800;
  232.   adRecIntegrityViolation = $00001000;
  233.   adRecMaxChangesExceeded = $00002000;
  234.   adRecObjectOpen = $00004000;
  235.   adRecOutOfMemory = $00008000;
  236.   adRecPermissionDenied = $00010000;
  237.   adRecSchemaViolation = $00020000;
  238.   adRecDBDeleted = $00040000;
  239.  
  240. // GetRowsOptionEnum constants
  241. type
  242.   GetRowsOptionEnum = TOleEnum;
  243. const
  244.   adGetRowsRest = $FFFFFFFF;
  245.  
  246. // PositionEnum constants
  247. type
  248.   PositionEnum = TOleEnum;
  249. const
  250.   adPosUnknown = $FFFFFFFF;
  251.   adPosBOF = $FFFFFFFE;
  252.   adPosEOF = $FFFFFFFD;
  253.  
  254. // BookmarkEnum constants
  255. type
  256.   BookmarkEnum = TOleEnum;
  257. const
  258.   adBookmarkCurrent = $00000000;
  259.   adBookmarkFirst = $00000001;
  260.   adBookmarkLast = $00000002;
  261.  
  262. // MarshalOptionsEnum constants
  263. type
  264.   MarshalOptionsEnum = TOleEnum;
  265. const
  266.   adMarshalAll = $00000000;
  267.   adMarshalModifiedOnly = $00000001;
  268.  
  269. // AffectEnum constants
  270. type
  271.   AffectEnum = TOleEnum;
  272. const
  273.   adAffectCurrent = $00000001;
  274.   adAffectGroup = $00000002;
  275.   adAffectAll = $00000003;
  276.   adAffectAllChapters = $00000004;
  277.  
  278. // ResyncEnum constants
  279. type
  280.   ResyncEnum = TOleEnum;
  281. const
  282.   adResyncUnderlyingValues = $00000001;
  283.   adResyncAllValues = $00000002;
  284.  
  285. // CompareEnum constants
  286. type
  287.   CompareEnum = TOleEnum;
  288. const
  289.   adCompareLessThan = $00000000;
  290.   adCompareEqual = $00000001;
  291.   adCompareGreaterThan = $00000002;
  292.   adCompareNotEqual = $00000003;
  293.   adCompareNotComparable = $00000004;
  294.  
  295. // FilterGroupEnum constants
  296. type
  297.   FilterGroupEnum = TOleEnum;
  298. const
  299.   adFilterNone = $00000000;
  300.   adFilterPendingRecords = $00000001;
  301.   adFilterAffectedRecords = $00000002;
  302.   adFilterFetchedRecords = $00000003;
  303.   adFilterPredicate = $00000004;
  304.   adFilterConflictingRecords = $00000005;
  305.  
  306. // SearchDirectionEnum constants
  307. type
  308.   SearchDirectionEnum = TOleEnum;
  309. const
  310.   adSearchForward = $00000001;
  311.   adSearchBackward = $FFFFFFFF;
  312.  
  313. // PersistFormatEnum constants
  314. type
  315.   PersistFormatEnum = TOleEnum;
  316. const
  317.   adPersistADTG = $00000000;
  318.   adPersistXML = $00000001;
  319.  
  320. // StringFormatEnum constants
  321. type
  322.   StringFormatEnum = TOleEnum;
  323. const
  324.   adClipString = $00000002;
  325.  
  326. // ADCPROP_UPDATECRITERIA_ENUM constants
  327. type
  328.   ADCPROP_UPDATECRITERIA_ENUM = TOleEnum;
  329. const
  330.   adCriteriaKey = $00000000;
  331.   adCriteriaAllCols = $00000001;
  332.   adCriteriaUpdCols = $00000002;
  333.   adCriteriaTimeStamp = $00000003;
  334.  
  335. // ADCPROP_ASYNCTHREADPRIORITY_ENUM constants
  336. type
  337.   ADCPROP_ASYNCTHREADPRIORITY_ENUM = TOleEnum;
  338. const
  339.   adPriorityLowest = $00000001;
  340.   adPriorityBelowNormal = $00000002;
  341.   adPriorityNormal = $00000003;
  342.   adPriorityAboveNormal = $00000004;
  343.   adPriorityHighest = $00000005;
  344.  
  345. // ConnectPromptEnum constants
  346. type
  347.   ConnectPromptEnum = TOleEnum;
  348. const
  349.   adPromptAlways = $00000001;
  350.   adPromptComplete = $00000002;
  351.   adPromptCompleteRequired = $00000003;
  352.   adPromptNever = $00000004;
  353.  
  354. // ConnectModeEnum constants
  355. type
  356.   ConnectModeEnum = TOleEnum;
  357. const
  358.   adModeUnknown = $00000000;
  359.   adModeRead = $00000001;
  360.   adModeWrite = $00000002;
  361.   adModeReadWrite = $00000003;
  362.   adModeShareDenyRead = $00000004;
  363.   adModeShareDenyWrite = $00000008;
  364.   adModeShareExclusive = $0000000C;
  365.   adModeShareDenyNone = $00000010;
  366.  
  367. // IsolationLevelEnum constants
  368. type
  369.   IsolationLevelEnum = TOleEnum;
  370. const
  371.   adXactUnspecified = $FFFFFFFF;
  372.   adXactChaos = $00000010;
  373.   adXactReadUncommitted = $00000100;
  374.   adXactBrowse = $00000100;
  375.   adXactCursorStability = $00001000;
  376.   adXactReadCommitted = $00001000;
  377.   adXactRepeatableRead = $00010000;
  378.   adXactSerializable = $00100000;
  379.   adXactIsolated = $00100000;
  380.  
  381. // XactAttributeEnum constants
  382. type
  383.   XactAttributeEnum = TOleEnum;
  384. const
  385.   adXactCommitRetaining = $00020000;
  386.   adXactAbortRetaining = $00040000;
  387.   adXactAsyncPhaseOne = $00080000;
  388.   adXactSyncPhaseOne = $00100000;
  389.  
  390. // PropertyAttributesEnum constants
  391. type
  392.   PropertyAttributesEnum = TOleEnum;
  393. const
  394.   adPropNotSupported = $00000000;
  395.   adPropRequired = $00000001;
  396.   adPropOptional = $00000002;
  397.   adPropRead = $00000200;
  398.   adPropWrite = $00000400;
  399.  
  400. // ErrorValueEnum constants
  401. type
  402.   ErrorValueEnum = TOleEnum;
  403. const
  404.   adErrInvalidArgument = $00000BB9;
  405.   adErrNoCurrentRecord = $00000BCD;
  406.   adErrIllegalOperation = $00000C93;
  407.   adErrInTransaction = $00000CAE;
  408.   adErrFeatureNotAvailable = $00000CB3;
  409.   adErrItemNotFound = $00000CC1;
  410.   adErrObjectInCollection = $00000D27;
  411.   adErrObjectNotSet = $00000D5C;
  412.   adErrDataConversion = $00000D5D;
  413.   adErrObjectClosed = $00000E78;
  414.   adErrObjectOpen = $00000E79;
  415.   adErrProviderNotFound = $00000E7A;
  416.   adErrBoundToCommand = $00000E7B;
  417.   adErrInvalidParamInfo = $00000E7C;
  418.   adErrInvalidConnection = $00000E7D;
  419.   adErrNotReentrant = $00000E7E;
  420.   adErrStillExecuting = $00000E7F;
  421.   adErrOperationCancelled = $00000E80;
  422.   adErrStillConnecting = $00000E81;
  423.   adErrNotExecuting = $00000E83;
  424.   adErrUnsafeOperation = $00000E84;
  425.  
  426. // ParameterAttributesEnum constants
  427. type
  428.   ParameterAttributesEnum = TOleEnum;
  429. const
  430.   adParamSigned = $00000010;
  431.   adParamNullable = $00000040;
  432.   adParamLong = $00000080;
  433.  
  434. // ParameterDirectionEnum constants
  435. type
  436.   ParameterDirectionEnum = TOleEnum;
  437. const
  438.   adParamUnknown = $00000000;
  439.   adParamInput = $00000001;
  440.   adParamOutput = $00000002;
  441.   adParamInputOutput = $00000003;
  442.   adParamReturnValue = $00000004;
  443.  
  444. // CommandTypeEnum constants
  445. type
  446.   CommandTypeEnum = TOleEnum;
  447. const
  448.   adCmdUnspecified = $FFFFFFFF;
  449.   adCmdUnknown = $00000008;
  450.   adCmdText = $00000001;
  451.   adCmdTable = $00000002;
  452.   adCmdStoredProc = $00000004;
  453.   adCmdFile = $00000100;
  454.   adCmdTableDirect = $00000200;
  455.  
  456. // EventStatusEnum constants
  457. type
  458.   EventStatusEnum = TOleEnum;
  459. const
  460.   adStatusOK = $00000001;
  461.   adStatusErrorsOccurred = $00000002;
  462.   adStatusCantDeny = $00000003;
  463.   adStatusCancel = $00000004;
  464.   adStatusUnwantedEvent = $00000005;
  465.  
  466. // EventReasonEnum constants
  467. type
  468.   EventReasonEnum = TOleEnum;
  469. const
  470.   adRsnAddNew = $00000001;
  471.   adRsnDelete = $00000002;
  472.   adRsnUpdate = $00000003;
  473.   adRsnUndoUpdate = $00000004;
  474.   adRsnUndoAddNew = $00000005;
  475.   adRsnUndoDelete = $00000006;
  476.   adRsnRequery = $00000007;
  477.   adRsnResynch = $00000008;
  478.   adRsnClose = $00000009;
  479.   adRsnMove = $0000000A;
  480.   adRsnFirstChange = $0000000B;
  481.   adRsnMoveFirst = $0000000C;
  482.   adRsnMoveNext = $0000000D;
  483.   adRsnMovePrevious = $0000000E;
  484.   adRsnMoveLast = $0000000F;
  485.  
  486. // SchemaEnum constants
  487. type
  488.   SchemaEnum = TOleEnum;
  489. const
  490.   adSchemaProviderSpecific = $FFFFFFFF;
  491.   adSchemaAsserts = $00000000;
  492.   adSchemaCatalogs = $00000001;
  493.   adSchemaCharacterSets = $00000002;
  494.   adSchemaCollations = $00000003;
  495.   adSchemaColumns = $00000004;
  496.   adSchemaCheckConstraints = $00000005;
  497.   adSchemaConstraintColumnUsage = $00000006;
  498.   adSchemaConstraintTableUsage = $00000007;
  499.   adSchemaKeyColumnUsage = $00000008;
  500.   adSchemaReferentialContraints = $00000009;
  501.   adSchemaTableConstraints = $0000000A;
  502.   adSchemaColumnsDomainUsage = $0000000B;
  503.   adSchemaIndexes = $0000000C;
  504.   adSchemaColumnPrivileges = $0000000D;
  505.   adSchemaTablePrivileges = $0000000E;
  506.   adSchemaUsagePrivileges = $0000000F;
  507.   adSchemaProcedures = $00000010;
  508.   adSchemaSchemata = $00000011;
  509.   adSchemaSQLLanguages = $00000012;
  510.   adSchemaStatistics = $00000013;
  511.   adSchemaTables = $00000014;
  512.   adSchemaTranslations = $00000015;
  513.   adSchemaProviderTypes = $00000016;
  514.   adSchemaViews = $00000017;
  515.   adSchemaViewColumnUsage = $00000018;
  516.   adSchemaViewTableUsage = $00000019;
  517.   adSchemaProcedureParameters = $0000001A;
  518.   adSchemaForeignKeys = $0000001B;
  519.   adSchemaPrimaryKeys = $0000001C;
  520.   adSchemaProcedureColumns = $0000001D;
  521.   adSchemaDBInfoKeywords = $0000001E;
  522.   adSchemaDBInfoLiterals = $0000001F;
  523.   adSchemaCubes = $00000020;
  524.   adSchemaDimensions = $00000021;
  525.   adSchemaHierarchies = $00000022;
  526.   adSchemaLevels = $00000023;
  527.   adSchemaMeasures = $00000024;
  528.   adSchemaProperties = $00000025;
  529.   adSchemaMembers = $00000026;
  530.  
  531. type
  532.  
  533. // *********************************************************************//
  534. // Forward declaration of interfaces defined in Type Library            //
  535. // *********************************************************************//
  536.   _Collection = interface;
  537.   _CollectionDisp = dispinterface;
  538.   _DynaCollection = interface;
  539.   _DynaCollectionDisp = dispinterface;
  540.   _ADO = interface;
  541.   _ADODisp = dispinterface;
  542.   Properties = interface;
  543.   PropertiesDisp = dispinterface;
  544.   Property_ = interface;
  545.   Property_Disp = dispinterface;
  546.   Error = interface;
  547.   ErrorDisp = dispinterface;
  548.   Errors = interface;
  549.   ErrorsDisp = dispinterface;
  550.   _Command15 = interface;
  551.   _Command15Disp = dispinterface;
  552.   _Connection15 = interface;
  553.   _Connection15Disp = dispinterface;
  554.   _Connection = interface;
  555.   _ConnectionDisp = dispinterface;
  556.   _Recordset15 = interface;
  557.   _Recordset15Disp = dispinterface;
  558.   _Recordset = interface;
  559.   _RecordsetDisp = dispinterface;
  560.   Fields15 = interface;
  561.   Fields15Disp = dispinterface;
  562.   Fields = interface;
  563.   FieldsDisp = dispinterface;
  564.   Field = interface;
  565.   FieldDisp = dispinterface;
  566.   _Parameter = interface;
  567.   _ParameterDisp = dispinterface;
  568.   Parameters = interface;
  569.   ParametersDisp = dispinterface;
  570.   _Command = interface;
  571.   _CommandDisp = dispinterface;
  572.   ConnectionEventsVt = interface;
  573.   RecordsetEventsVt = interface;
  574.   ConnectionEvents = dispinterface;
  575.   RecordsetEvents = dispinterface;
  576.   ADOConnectionConstruction15 = interface;
  577.   ADOConnectionConstruction = interface;
  578.   ADOCommandConstruction = interface;
  579.   ADORecordsetConstruction = interface;
  580.   Field15 = interface;
  581.   Field15Disp = dispinterface;
  582.  
  583. // *********************************************************************//
  584. // Declaration of CoClasses defined in Type Library                     //
  585. // (NOTE: Here we map each CoClass to its Default Interface)            //
  586. // *********************************************************************//
  587.   Connection = _Connection;
  588.   Command = _Command;
  589.   Recordset = _Recordset;
  590.   Parameter = _Parameter;
  591.  
  592.  
  593. // *********************************************************************//
  594. // Declaration of structures, unions and aliases.                       //
  595. // *********************************************************************//
  596.   POleVariant1 = ^OleVariant; {*}
  597.  
  598.   SearchDirection = SearchDirectionEnum; 
  599.  
  600. // *********************************************************************//
  601. // Interface: _Collection
  602. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  603. // GUID:      {00000512-0000-0010-8000-00AA006D2EA4}
  604. // *********************************************************************//
  605.   _Collection = interface(IDispatch)
  606.     ['{00000512-0000-0010-8000-00AA006D2EA4}']
  607.     function Get_Count: Integer; safecall;
  608.     function _NewEnum: IUnknown; safecall;
  609.     procedure Refresh; safecall;
  610.     property Count: Integer read Get_Count;
  611.   end;
  612.  
  613. // *********************************************************************//
  614. // DispIntf:  _CollectionDisp
  615. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  616. // GUID:      {00000512-0000-0010-8000-00AA006D2EA4}
  617. // *********************************************************************//
  618.   _CollectionDisp = dispinterface
  619.     ['{00000512-0000-0010-8000-00AA006D2EA4}']
  620.     property Count: Integer readonly dispid 1610743808;
  621.     function _NewEnum: IUnknown; dispid -4;
  622.     procedure Refresh; dispid 1610743810;
  623.   end;
  624.  
  625. // *********************************************************************//
  626. // Interface: _DynaCollection
  627. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  628. // GUID:      {00000513-0000-0010-8000-00AA006D2EA4}
  629. // *********************************************************************//
  630.   _DynaCollection = interface(_Collection)
  631.     ['{00000513-0000-0010-8000-00AA006D2EA4}']
  632.     procedure Append(const Object_: IDispatch); safecall;
  633.     procedure Delete(Index: OleVariant); safecall;
  634.   end;
  635.  
  636. // *********************************************************************//
  637. // DispIntf:  _DynaCollectionDisp
  638. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  639. // GUID:      {00000513-0000-0010-8000-00AA006D2EA4}
  640. // *********************************************************************//
  641.   _DynaCollectionDisp = dispinterface
  642.     ['{00000513-0000-0010-8000-00AA006D2EA4}']
  643.     procedure Append(const Object_: IDispatch); dispid 1610809344;
  644.     procedure Delete(Index: OleVariant); dispid 1610809345;
  645.     property Count: Integer readonly dispid 1610743808;
  646.     function _NewEnum: IUnknown; dispid -4;
  647.     procedure Refresh; dispid 1610743810;
  648.   end;
  649.  
  650. // *********************************************************************//
  651. // Interface: _ADO
  652. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  653. // GUID:      {00000534-0000-0010-8000-00AA006D2EA4}
  654. // *********************************************************************//
  655.   _ADO = interface(IDispatch)
  656.     ['{00000534-0000-0010-8000-00AA006D2EA4}']
  657.     function Get_Properties: Properties; safecall;
  658.     property Properties: Properties read Get_Properties;
  659.   end;
  660.  
  661. // *********************************************************************//
  662. // DispIntf:  _ADODisp
  663. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  664. // GUID:      {00000534-0000-0010-8000-00AA006D2EA4}
  665. // *********************************************************************//
  666.   _ADODisp = dispinterface
  667.     ['{00000534-0000-0010-8000-00AA006D2EA4}']
  668.     property Properties: Properties readonly dispid 500;
  669.   end;
  670.  
  671. // *********************************************************************//
  672. // Interface: Properties
  673. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  674. // GUID:      {00000504-0000-0010-8000-00AA006D2EA4}
  675. // *********************************************************************//
  676.   Properties = interface(_Collection)
  677.     ['{00000504-0000-0010-8000-00AA006D2EA4}']
  678.     function Get_Item(Index: OleVariant): Property_; safecall;
  679.     property Item[Index: OleVariant]: Property_ read Get_Item; default;
  680.   end;
  681.  
  682. // *********************************************************************//
  683. // DispIntf:  PropertiesDisp
  684. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  685. // GUID:      {00000504-0000-0010-8000-00AA006D2EA4}
  686. // *********************************************************************//
  687.   PropertiesDisp = dispinterface
  688.     ['{00000504-0000-0010-8000-00AA006D2EA4}']
  689.     property Item[Index: OleVariant]: Property_ readonly dispid 0; default;
  690.     property Count: Integer readonly dispid 1610743808;
  691.     function _NewEnum: IUnknown; dispid -4;
  692.     procedure Refresh; dispid 1610743810;
  693.   end;
  694.  
  695. // *********************************************************************//
  696. // Interface: Property_
  697. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  698. // GUID:      {00000503-0000-0010-8000-00AA006D2EA4}
  699. // *********************************************************************//
  700.   Property_ = interface(IDispatch)
  701.     ['{00000503-0000-0010-8000-00AA006D2EA4}']
  702.     function Get_Value: OleVariant; safecall;
  703.     procedure Set_Value(pval: OleVariant); safecall;
  704.     function Get_Name: WideString; safecall;
  705.     function Get_Type_: DataTypeEnum; safecall;
  706.     function Get_Attributes: Integer; safecall;
  707.     procedure Set_Attributes(plAttributes: Integer); safecall;
  708.     property Value: OleVariant read Get_Value write Set_Value;
  709.     property Name: WideString read Get_Name;
  710.     property Type_: DataTypeEnum read Get_Type_;
  711.     property Attributes: Integer read Get_Attributes write Set_Attributes;
  712.   end;
  713.  
  714. // *********************************************************************//
  715. // DispIntf:  Property_Disp
  716. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  717. // GUID:      {00000503-0000-0010-8000-00AA006D2EA4}
  718. // *********************************************************************//
  719.   Property_Disp = dispinterface
  720.     ['{00000503-0000-0010-8000-00AA006D2EA4}']
  721.     property Value: OleVariant dispid 0;
  722.     property Name: WideString readonly dispid 1610743810;
  723.     property Type_: DataTypeEnum readonly dispid 1610743811;
  724.     property Attributes: Integer dispid 1610743812;
  725.   end;
  726.  
  727. // *********************************************************************//
  728. // Interface: Error
  729. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  730. // GUID:      {00000500-0000-0010-8000-00AA006D2EA4}
  731. // *********************************************************************//
  732.   Error = interface(IDispatch)
  733.     ['{00000500-0000-0010-8000-00AA006D2EA4}']
  734.     function Get_Number: Integer; safecall;
  735.     function Get_Source: WideString; safecall;
  736.     function Get_Description: WideString; safecall;
  737.     function Get_HelpFile: WideString; safecall;
  738.     function Get_HelpContext: Integer; safecall;
  739.     function Get_SQLState: WideString; safecall;
  740.     function Get_NativeError: Integer; safecall;
  741.     property Number: Integer read Get_Number;
  742.     property Source: WideString read Get_Source;
  743.     property Description: WideString read Get_Description;
  744.     property HelpFile: WideString read Get_HelpFile;
  745.     property HelpContext: Integer read Get_HelpContext;
  746.     property SQLState: WideString read Get_SQLState;
  747.     property NativeError: Integer read Get_NativeError;
  748.   end;
  749.  
  750. // *********************************************************************//
  751. // DispIntf:  ErrorDisp
  752. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  753. // GUID:      {00000500-0000-0010-8000-00AA006D2EA4}
  754. // *********************************************************************//
  755.   ErrorDisp = dispinterface
  756.     ['{00000500-0000-0010-8000-00AA006D2EA4}']
  757.     property Number: Integer readonly dispid 1610743808;
  758.     property Source: WideString readonly dispid 1610743809;
  759.     property Description: WideString readonly dispid 0;
  760.     property HelpFile: WideString readonly dispid 1610743811;
  761.     property HelpContext: Integer readonly dispid 1610743812;
  762.     property SQLState: WideString readonly dispid 1610743813;
  763.     property NativeError: Integer readonly dispid 1610743814;
  764.   end;
  765.  
  766. // *********************************************************************//
  767. // Interface: Errors
  768. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  769. // GUID:      {00000501-0000-0010-8000-00AA006D2EA4}
  770. // *********************************************************************//
  771.   Errors = interface(_Collection)
  772.     ['{00000501-0000-0010-8000-00AA006D2EA4}']
  773.     function Get_Item(Index: OleVariant): Error; safecall;
  774.     procedure Clear; safecall;
  775.     property Item[Index: OleVariant]: Error read Get_Item; default;
  776.   end;
  777.  
  778. // *********************************************************************//
  779. // DispIntf:  ErrorsDisp
  780. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  781. // GUID:      {00000501-0000-0010-8000-00AA006D2EA4}
  782. // *********************************************************************//
  783.   ErrorsDisp = dispinterface
  784.     ['{00000501-0000-0010-8000-00AA006D2EA4}']
  785.     property Item[Index: OleVariant]: Error readonly dispid 0; default;
  786.     procedure Clear; dispid 1610809345;
  787.     property Count: Integer readonly dispid 1610743808;
  788.     function _NewEnum: IUnknown; dispid -4;
  789.     procedure Refresh; dispid 1610743810;
  790.   end;
  791.  
  792. // *********************************************************************//
  793. // Interface: _Command15
  794. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  795. // GUID:      {00000508-0000-0010-8000-00AA006D2EA4}
  796. // *********************************************************************//
  797.   _Command15 = interface(_ADO)
  798.     ['{00000508-0000-0010-8000-00AA006D2EA4}']
  799.     function Get_ActiveConnection: _Connection; safecall;
  800.     procedure Set_ActiveConnection(const ppvObject: _Connection); safecall;
  801.     procedure _Set_ActiveConnection(ppvObject: OleVariant); safecall;
  802.     function Get_CommandText: WideString; safecall;
  803.     procedure Set_CommandText(const pbstr: WideString); safecall;
  804.     function Get_CommandTimeout: Integer; safecall;
  805.     procedure Set_CommandTimeout(pl: Integer); safecall;
  806.     function Get_Prepared: WordBool; safecall;
  807.     procedure Set_Prepared(pfPrepared: WordBool); safecall;
  808.     function Execute(out RecordsAffected: OleVariant; var Parameters: OleVariant; Options: Integer): _Recordset; safecall;
  809.     function CreateParameter(const Name: WideString; Type_: DataTypeEnum; 
  810.                              Direction: ParameterDirectionEnum; Size: Integer; Value: OleVariant): _Parameter; safecall;
  811.     function Get_Parameters: Parameters; safecall;
  812.     procedure Set_CommandType(plCmdType: CommandTypeEnum); safecall;
  813.     function Get_CommandType: CommandTypeEnum; safecall;
  814.     function Get_Name: WideString; safecall;
  815.     procedure Set_Name(const pbstrName: WideString); safecall;
  816.     property CommandText: WideString read Get_CommandText write Set_CommandText;
  817.     property CommandTimeout: Integer read Get_CommandTimeout write Set_CommandTimeout;
  818.     property Prepared: WordBool read Get_Prepared write Set_Prepared;
  819.     property Parameters: Parameters read Get_Parameters;
  820.     property CommandType: CommandTypeEnum read Get_CommandType write Set_CommandType;
  821.     property Name: WideString read Get_Name write Set_Name;
  822.   end;
  823.  
  824. // *********************************************************************//
  825. // DispIntf:  _Command15Disp
  826. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  827. // GUID:      {00000508-0000-0010-8000-00AA006D2EA4}
  828. // *********************************************************************//
  829.   _Command15Disp = dispinterface
  830.     ['{00000508-0000-0010-8000-00AA006D2EA4}']
  831.     function ActiveConnection: _Connection; dispid 1610809344;
  832.     property CommandText: WideString dispid 1610809347;
  833.     property CommandTimeout: Integer dispid 1610809349;
  834.     property Prepared: WordBool dispid 1610809351;
  835.     function Execute(out RecordsAffected: OleVariant; var Parameters: OleVariant; Options: Integer): _Recordset; dispid 1610809353;
  836.     function CreateParameter(const Name: WideString; Type_: DataTypeEnum; 
  837.                              Direction: ParameterDirectionEnum; Size: Integer; Value: OleVariant): _Parameter; dispid 1610809354;
  838.     property Parameters: Parameters readonly dispid 0;
  839.     property CommandType: CommandTypeEnum dispid 1610809356;
  840.     property Name: WideString dispid 1610809358;
  841.     property Properties: Properties readonly dispid 500;
  842.   end;
  843.  
  844. // *********************************************************************//
  845. // Interface: _Connection15
  846. // Flags:     (4432) Hidden Dual OleAutomation Dispatchable
  847. // GUID:      {00000515-0000-0010-8000-00AA006D2EA4}
  848. // *********************************************************************//
  849.   _Connection15 = interface(_ADO)
  850.     ['{00000515-0000-0010-8000-00AA006D2EA4}']
  851.     function Get_ConnectionString: WideString; safecall;
  852.     procedure Set_ConnectionString(const pbstr: WideString); safecall;
  853.     function Get_CommandTimeout: Integer; safecall;
  854.     procedure Set_CommandTimeout(plTimeout: Integer); safecall;
  855.     function Get_ConnectionTimeout: Integer; safecall;
  856.     procedure Set_ConnectionTimeout(plTimeout: Integer); safecall;
  857.     function Get_Version: WideString; safecall;
  858.     procedure Close; safecall;
  859.     function Execute(const CommandText: WideString; out RecordsAffected: OleVariant; 
  860.                      Options: Integer): _Recordset; safecall;
  861.     function BeginTrans: Integer; safecall;
  862.     procedure CommitTrans; safecall;
  863.     procedure RollbackTrans; safecall;
  864.     procedure Open(const ConnectionString: WideString; const UserID: WideString; 
  865.                    const Password: WideString; Options: Integer); safecall;
  866.     function Get_Errors: Errors; safecall;
  867.     function Get_DefaultDatabase: WideString; safecall;
  868.     procedure Set_DefaultDatabase(const pbstr: WideString); safecall;
  869.     function Get_IsolationLevel: IsolationLevelEnum; safecall;
  870.     procedure Set_IsolationLevel(Level: IsolationLevelEnum); safecall;
  871.     function Get_Attributes: Integer; safecall;
  872.     procedure Set_Attributes(plAttr: Integer); safecall;
  873.     function Get_CursorLocation: CursorLocationEnum; safecall;
  874.     procedure Set_CursorLocation(plCursorLoc: CursorLocationEnum); safecall;
  875.     function Get_Mode: ConnectModeEnum; safecall;
  876.     procedure Set_Mode(plMode: ConnectModeEnum); safecall;
  877.     function Get_Provider: WideString; safecall;
  878.     procedure Set_Provider(const pbstr: WideString); safecall;
  879.     function Get_State: Integer; safecall;
  880.     function OpenSchema(Schema: SchemaEnum; Restrictions: OleVariant; SchemaID: OleVariant): _Recordset; safecall;
  881.     property ConnectionString: WideString read Get_ConnectionString write Set_ConnectionString;
  882.     property CommandTimeout: Integer read Get_CommandTimeout write Set_CommandTimeout;
  883.     property ConnectionTimeout: Integer read Get_ConnectionTimeout write Set_ConnectionTimeout;
  884.     property Version: WideString read Get_Version;
  885.     property Errors: Errors read Get_Errors;
  886.     property DefaultDatabase: WideString read Get_DefaultDatabase write Set_DefaultDatabase;
  887.     property IsolationLevel: IsolationLevelEnum read Get_IsolationLevel write Set_IsolationLevel;
  888.     property Attributes: Integer read Get_Attributes write Set_Attributes;
  889.     property CursorLocation: CursorLocationEnum read Get_CursorLocation write Set_CursorLocation;
  890.     property Mode: ConnectModeEnum read Get_Mode write Set_Mode;
  891.     property Provider: WideString read Get_Provider write Set_Provider;
  892.     property State: Integer read Get_State;
  893.   end;
  894.  
  895. // *********************************************************************//
  896. // DispIntf:  _Connection15Disp
  897. // Flags:     (4432) Hidden Dual OleAutomation Dispatchable
  898. // GUID:      {00000515-0000-0010-8000-00AA006D2EA4}
  899. // *********************************************************************//
  900.   _Connection15Disp = dispinterface
  901.     ['{00000515-0000-0010-8000-00AA006D2EA4}']
  902.     property ConnectionString: WideString dispid 0;
  903.     property CommandTimeout: Integer dispid 2;
  904.     property ConnectionTimeout: Integer dispid 3;
  905.     property Version: WideString readonly dispid 4;
  906.     procedure Close; dispid 5;
  907.     function Execute(const CommandText: WideString; out RecordsAffected: OleVariant; 
  908.                      Options: Integer): _Recordset; dispid 6;
  909.     function BeginTrans: Integer; dispid 7;
  910.     procedure CommitTrans; dispid 8;
  911.     procedure RollbackTrans; dispid 9;
  912.     procedure Open(const ConnectionString: WideString; const UserID: WideString; 
  913.                    const Password: WideString; Options: Integer); dispid 10;
  914.     property Errors: Errors readonly dispid 11;
  915.     property DefaultDatabase: WideString dispid 12;
  916.     property IsolationLevel: IsolationLevelEnum dispid 13;
  917.     property Attributes: Integer dispid 14;
  918.     property CursorLocation: CursorLocationEnum dispid 15;
  919.     property Mode: ConnectModeEnum dispid 16;
  920.     property Provider: WideString dispid 17;
  921.     property State: Integer readonly dispid 18;
  922.     function OpenSchema(Schema: SchemaEnum; Restrictions: OleVariant; SchemaID: OleVariant): _Recordset; dispid 19;
  923.     property Properties: Properties readonly dispid 500;
  924.   end;
  925.  
  926. // *********************************************************************//
  927. // Interface: _Connection
  928. // Flags:     (4416) Dual OleAutomation Dispatchable
  929. // GUID:      {00000550-0000-0010-8000-00AA006D2EA4}
  930. // *********************************************************************//
  931.   _Connection = interface(_Connection15)
  932.     ['{00000550-0000-0010-8000-00AA006D2EA4}']
  933.     procedure Cancel; safecall;
  934.   end;
  935.  
  936. // *********************************************************************//
  937. // DispIntf:  _ConnectionDisp
  938. // Flags:     (4416) Dual OleAutomation Dispatchable
  939. // GUID:      {00000550-0000-0010-8000-00AA006D2EA4}
  940. // *********************************************************************//
  941.   _ConnectionDisp = dispinterface
  942.     ['{00000550-0000-0010-8000-00AA006D2EA4}']
  943.     procedure Cancel; dispid 21;
  944.     property ConnectionString: WideString dispid 0;
  945.     property CommandTimeout: Integer dispid 2;
  946.     property ConnectionTimeout: Integer dispid 3;
  947.     property Version: WideString readonly dispid 4;
  948.     procedure Close; dispid 5;
  949.     function Execute(const CommandText: WideString; out RecordsAffected: OleVariant; 
  950.                      Options: Integer): _Recordset; dispid 6;
  951.     function BeginTrans: Integer; dispid 7;
  952.     procedure CommitTrans; dispid 8;
  953.     procedure RollbackTrans; dispid 9;
  954.     procedure Open(const ConnectionString: WideString; const UserID: WideString; 
  955.                    const Password: WideString; Options: Integer); dispid 10;
  956.     property Errors: Errors readonly dispid 11;
  957.     property DefaultDatabase: WideString dispid 12;
  958.     property IsolationLevel: IsolationLevelEnum dispid 13;
  959.     property Attributes: Integer dispid 14;
  960.     property CursorLocation: CursorLocationEnum dispid 15;
  961.     property Mode: ConnectModeEnum dispid 16;
  962.     property Provider: WideString dispid 17;
  963.     property State: Integer readonly dispid 18;
  964.     function OpenSchema(Schema: SchemaEnum; Restrictions: OleVariant; SchemaID: OleVariant): _Recordset; dispid 19;
  965.     property Properties: Properties readonly dispid 500;
  966.   end;
  967.  
  968. // *********************************************************************//
  969. // Interface: _Recordset15
  970. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  971. // GUID:      {0000050E-0000-0010-8000-00AA006D2EA4}
  972. // *********************************************************************//
  973.   _Recordset15 = interface(_ADO)
  974.     ['{0000050E-0000-0010-8000-00AA006D2EA4}']
  975.     function Get_AbsolutePosition: PositionEnum; safecall;
  976.     procedure Set_AbsolutePosition(pl: PositionEnum); safecall;
  977.     procedure Set_ActiveConnection(const pvar: IDispatch); safecall;
  978.     procedure _Set_ActiveConnection(pvar: OleVariant); safecall;
  979.     function Get_ActiveConnection: OleVariant; safecall;
  980.     function Get_BOF: WordBool; safecall;
  981.     function Get_Bookmark: OleVariant; safecall;
  982.     procedure Set_Bookmark(pvBookmark: OleVariant); safecall;
  983.     function Get_CacheSize: Integer; safecall;
  984.     procedure Set_CacheSize(pl: Integer); safecall;
  985.     function Get_CursorType: CursorTypeEnum; safecall;
  986.     procedure Set_CursorType(plCursorType: CursorTypeEnum); safecall;
  987.     function Get_EOF: WordBool; safecall;
  988.     function Get_Fields: Fields; safecall;
  989.     function Get_LockType: LockTypeEnum; safecall;
  990.     procedure Set_LockType(plLockType: LockTypeEnum); safecall;
  991.     function Get_MaxRecords: Integer; safecall;
  992.     procedure Set_MaxRecords(plMaxRecords: Integer); safecall;
  993.     function Get_RecordCount: Integer; safecall;
  994.     procedure Set_Source(const pvSource: IDispatch); safecall;
  995.     procedure _Set_Source(const pvSource: WideString); safecall;
  996.     function Get_Source: OleVariant; safecall;
  997.     procedure AddNew(FieldList: OleVariant; Values: OleVariant); safecall;
  998.     procedure CancelUpdate; safecall;
  999.     procedure Close; safecall;
  1000.     procedure Delete(AffectRecords: AffectEnum); safecall;
  1001.     function GetRows(Rows: Integer; Start: OleVariant; Fields: OleVariant): OleVariant; safecall;
  1002.     procedure Move(NumRecords: Integer; Start: OleVariant); safecall;
  1003.     procedure MoveNext; safecall;
  1004.     procedure MovePrevious; safecall;
  1005.     procedure MoveFirst; safecall;
  1006.     procedure MoveLast; safecall;
  1007.     procedure Open(Source: OleVariant; ActiveConnection: OleVariant; CursorType: CursorTypeEnum; 
  1008.                    LockType: LockTypeEnum; Options: Integer); safecall;
  1009.     procedure Requery(Options: Integer); safecall;
  1010.     procedure _xResync(AffectRecords: AffectEnum); safecall;
  1011.     procedure Update(Fields: OleVariant; Values: OleVariant); safecall;
  1012.     function Get_AbsolutePage: PositionEnum; safecall;
  1013.     procedure Set_AbsolutePage(pl: PositionEnum); safecall;
  1014.     function Get_EditMode: EditModeEnum; safecall;
  1015.     function Get_Filter: OleVariant; safecall;
  1016.     procedure Set_Filter(Criteria: OleVariant); safecall;
  1017.     function Get_PageCount: Integer; safecall;
  1018.     function Get_PageSize: Integer; safecall;
  1019.     procedure Set_PageSize(pl: Integer); safecall;
  1020.     function Get_Sort: WideString; safecall;
  1021.     procedure Set_Sort(const Criteria: WideString); safecall;
  1022.     function Get_Status: Integer; safecall;
  1023.     function Get_State: Integer; safecall;
  1024.     function _xClone: _Recordset; safecall;
  1025.     procedure UpdateBatch(AffectRecords: AffectEnum); safecall;
  1026.     procedure CancelBatch(AffectRecords: AffectEnum); safecall;
  1027.     function Get_CursorLocation: CursorLocationEnum; safecall;
  1028.     procedure Set_CursorLocation(plCursorLoc: CursorLocationEnum); safecall;
  1029.     function NextRecordset(out RecordsAffected: OleVariant): _Recordset; safecall;
  1030.     function Supports(CursorOptions: CursorOptionEnum): WordBool; safecall;
  1031.     function Get_Collect(Index: OleVariant): OleVariant; safecall;
  1032.     procedure Set_Collect(Index: OleVariant; pvar: OleVariant); safecall;
  1033.     function Get_MarshalOptions: MarshalOptionsEnum; safecall;
  1034.     procedure Set_MarshalOptions(peMarshal: MarshalOptionsEnum); safecall;
  1035.     procedure Find(const Criteria: WideString; SkipRecords: Integer; 
  1036.                    SearchDirection: SearchDirectionEnum; Start: OleVariant); safecall;
  1037.     property AbsolutePosition: PositionEnum read Get_AbsolutePosition write Set_AbsolutePosition;
  1038.     property BOF: WordBool read Get_BOF;
  1039.     property Bookmark: OleVariant read Get_Bookmark write Set_Bookmark;
  1040.     property CacheSize: Integer read Get_CacheSize write Set_CacheSize;
  1041.     property CursorType: CursorTypeEnum read Get_CursorType write Set_CursorType;
  1042.     property EOF: WordBool read Get_EOF;
  1043.     property Fields: Fields read Get_Fields;
  1044.     property LockType: LockTypeEnum read Get_LockType write Set_LockType;
  1045.     property MaxRecords: Integer read Get_MaxRecords write Set_MaxRecords;
  1046.     property RecordCount: Integer read Get_RecordCount;
  1047.     property AbsolutePage: PositionEnum read Get_AbsolutePage write Set_AbsolutePage;
  1048.     property EditMode: EditModeEnum read Get_EditMode;
  1049.     property Filter: OleVariant read Get_Filter write Set_Filter;
  1050.     property PageCount: Integer read Get_PageCount;
  1051.     property PageSize: Integer read Get_PageSize write Set_PageSize;
  1052.     property Sort: WideString read Get_Sort write Set_Sort;
  1053.     property Status: Integer read Get_Status;
  1054.     property State: Integer read Get_State;
  1055.     property CursorLocation: CursorLocationEnum read Get_CursorLocation write Set_CursorLocation;
  1056.     property Collect[Index: OleVariant]: OleVariant read Get_Collect write Set_Collect;
  1057.     property MarshalOptions: MarshalOptionsEnum read Get_MarshalOptions write Set_MarshalOptions;
  1058.   end;
  1059.  
  1060. // *********************************************************************//
  1061. // DispIntf:  _Recordset15Disp
  1062. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1063. // GUID:      {0000050E-0000-0010-8000-00AA006D2EA4}
  1064. // *********************************************************************//
  1065.   _Recordset15Disp = dispinterface
  1066.     ['{0000050E-0000-0010-8000-00AA006D2EA4}']
  1067.     property AbsolutePosition: PositionEnum dispid 1000;
  1068.     function ActiveConnection: IDispatch; dispid 1001;
  1069.     property BOF: WordBool readonly dispid 1002;
  1070.     property Bookmark: OleVariant dispid 1003;
  1071.     property CacheSize: Integer dispid 1004;
  1072.     property CursorType: CursorTypeEnum dispid 1005;
  1073.     property EOF: WordBool readonly dispid 1006;
  1074.     property Fields: Fields readonly dispid 0;
  1075.     property LockType: LockTypeEnum dispid 1008;
  1076.     property MaxRecords: Integer dispid 1009;
  1077.     property RecordCount: Integer readonly dispid 1010;
  1078.     function Source: IDispatch; dispid 1011;
  1079.     procedure AddNew(FieldList: OleVariant; Values: OleVariant); dispid 1012;
  1080.     procedure CancelUpdate; dispid 1013;
  1081.     procedure Close; dispid 1014;
  1082.     procedure Delete(AffectRecords: AffectEnum); dispid 1015;
  1083.     function GetRows(Rows: Integer; Start: OleVariant; Fields: OleVariant): OleVariant; dispid 1016;
  1084.     procedure Move(NumRecords: Integer; Start: OleVariant); dispid 1017;
  1085.     procedure MoveNext; dispid 1018;
  1086.     procedure MovePrevious; dispid 1019;
  1087.     procedure MoveFirst; dispid 1020;
  1088.     procedure MoveLast; dispid 1021;
  1089.     procedure Open(Source: OleVariant; ActiveConnection: OleVariant; CursorType: CursorTypeEnum; 
  1090.                    LockType: LockTypeEnum; Options: Integer); dispid 1022;
  1091.     procedure Requery(Options: Integer); dispid 1023;
  1092.     procedure _xResync(AffectRecords: AffectEnum); dispid 1610809378;
  1093.     procedure Update(Fields: OleVariant; Values: OleVariant); dispid 1025;
  1094.     property AbsolutePage: PositionEnum dispid 1047;
  1095.     property EditMode: EditModeEnum readonly dispid 1026;
  1096.     property Filter: OleVariant dispid 1030;
  1097.     property PageCount: Integer readonly dispid 1050;
  1098.     property PageSize: Integer dispid 1048;
  1099.     property Sort: WideString dispid 1031;
  1100.     property Status: Integer readonly dispid 1029;
  1101.     property State: Integer readonly dispid 1054;
  1102.     function _xClone: _Recordset; dispid 1610809392;
  1103.     procedure UpdateBatch(AffectRecords: AffectEnum); dispid 1035;
  1104.     procedure CancelBatch(AffectRecords: AffectEnum); dispid 1049;
  1105.     property CursorLocation: CursorLocationEnum dispid 1051;
  1106.     function NextRecordset(out RecordsAffected: OleVariant): _Recordset; dispid 1052;
  1107.     function Supports(CursorOptions: CursorOptionEnum): WordBool; dispid 1036;
  1108.     property Collect[Index: OleVariant]: OleVariant dispid -8;
  1109.     property MarshalOptions: MarshalOptionsEnum dispid 1053;
  1110.     procedure Find(const Criteria: WideString; SkipRecords: Integer; 
  1111.                    SearchDirection: SearchDirectionEnum; Start: OleVariant); dispid 1058;
  1112.     property Properties: Properties readonly dispid 500;
  1113.   end;
  1114.  
  1115. // *********************************************************************//
  1116. // Interface: _Recordset
  1117. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1118. // GUID:      {0000054F-0000-0010-8000-00AA006D2EA4}
  1119. // *********************************************************************//
  1120.   _Recordset = interface(_Recordset15)
  1121.     ['{0000054F-0000-0010-8000-00AA006D2EA4}']
  1122.     procedure Cancel; safecall;
  1123.     function Get_DataSource: IUnknown; safecall;
  1124.     procedure Set_DataSource(const ppunkDataSource: IUnknown); safecall;
  1125.     procedure Save(const FileName: WideString; PersistFormat: PersistFormatEnum); safecall;
  1126.     function Get_ActiveCommand: IDispatch; safecall;
  1127.     procedure Set_StayInSync(pbStayInSync: WordBool); safecall;
  1128.     function Get_StayInSync: WordBool; safecall;
  1129.     function GetString(StringFormat: StringFormatEnum; NumRows: Integer; 
  1130.                        const ColumnDelimeter: WideString; const RowDelimeter: WideString; 
  1131.                        const NullExpr: WideString): WideString; safecall;
  1132.     function Get_DataMember: WideString; safecall;
  1133.     procedure Set_DataMember(const pbstrDataMember: WideString); safecall;
  1134.     function CompareBookmarks(Bookmark1: OleVariant; Bookmark2: OleVariant): CompareEnum; safecall;
  1135.     function Clone(LockType: LockTypeEnum): _Recordset; safecall;
  1136.     procedure Resync(AffectRecords: AffectEnum; ResyncValues: ResyncEnum); safecall;
  1137.     property DataSource: IUnknown read Get_DataSource write Set_DataSource;
  1138.     property ActiveCommand: IDispatch read Get_ActiveCommand;
  1139.     property StayInSync: WordBool read Get_StayInSync write Set_StayInSync;
  1140.     property DataMember: WideString read Get_DataMember write Set_DataMember;
  1141.   end;
  1142.  
  1143. // *********************************************************************//
  1144. // DispIntf:  _RecordsetDisp
  1145. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1146. // GUID:      {0000054F-0000-0010-8000-00AA006D2EA4}
  1147. // *********************************************************************//
  1148.   _RecordsetDisp = dispinterface
  1149.     ['{0000054F-0000-0010-8000-00AA006D2EA4}']
  1150.     procedure Cancel; dispid 1055;
  1151.     property DataSource: IUnknown dispid 1056;
  1152.     procedure Save(const FileName: WideString; PersistFormat: PersistFormatEnum); dispid 1057;
  1153.     property ActiveCommand: IDispatch readonly dispid 1061;
  1154.     property StayInSync: WordBool dispid 1063;
  1155.     function GetString(StringFormat: StringFormatEnum; NumRows: Integer; 
  1156.                        const ColumnDelimeter: WideString; const RowDelimeter: WideString; 
  1157.                        const NullExpr: WideString): WideString; dispid 1062;
  1158.     property DataMember: WideString dispid 1064;
  1159.     function CompareBookmarks(Bookmark1: OleVariant; Bookmark2: OleVariant): CompareEnum; dispid 1065;
  1160.     function Clone(LockType: LockTypeEnum): _Recordset; dispid 1034;
  1161.     procedure Resync(AffectRecords: AffectEnum; ResyncValues: ResyncEnum); dispid 1024;
  1162.     property AbsolutePosition: PositionEnum dispid 1000;
  1163.     function ActiveConnection: IDispatch; dispid 1001;
  1164.     property BOF: WordBool readonly dispid 1002;
  1165.     property Bookmark: OleVariant dispid 1003;
  1166.     property CacheSize: Integer dispid 1004;
  1167.     property CursorType: CursorTypeEnum dispid 1005;
  1168.     property EOF: WordBool readonly dispid 1006;
  1169.     property Fields: Fields readonly dispid 0;
  1170.     property LockType: LockTypeEnum dispid 1008;
  1171.     property MaxRecords: Integer dispid 1009;
  1172.     property RecordCount: Integer readonly dispid 1010;
  1173.     function Source: IDispatch; dispid 1011;
  1174.     procedure AddNew(FieldList: OleVariant; Values: OleVariant); dispid 1012;
  1175.     procedure CancelUpdate; dispid 1013;
  1176.     procedure Close; dispid 1014;
  1177.     procedure Delete(AffectRecords: AffectEnum); dispid 1015;
  1178.     function GetRows(Rows: Integer; Start: OleVariant; Fields: OleVariant): OleVariant; dispid 1016;
  1179.     procedure Move(NumRecords: Integer; Start: OleVariant); dispid 1017;
  1180.     procedure MoveNext; dispid 1018;
  1181.     procedure MovePrevious; dispid 1019;
  1182.     procedure MoveFirst; dispid 1020;
  1183.     procedure MoveLast; dispid 1021;
  1184.     procedure Open(Source: OleVariant; ActiveConnection: OleVariant; CursorType: CursorTypeEnum; 
  1185.                    LockType: LockTypeEnum; Options: Integer); dispid 1022;
  1186.     procedure Requery(Options: Integer); dispid 1023;
  1187.     procedure _xResync(AffectRecords: AffectEnum); dispid 1610809378;
  1188.     procedure Update(Fields: OleVariant; Values: OleVariant); dispid 1025;
  1189.     property AbsolutePage: PositionEnum dispid 1047;
  1190.     property EditMode: EditModeEnum readonly dispid 1026;
  1191.     property Filter: OleVariant dispid 1030;
  1192.     property PageCount: Integer readonly dispid 1050;
  1193.     property PageSize: Integer dispid 1048;
  1194.     property Sort: WideString dispid 1031;
  1195.     property Status: Integer readonly dispid 1029;
  1196.     property State: Integer readonly dispid 1054;
  1197.     function _xClone: _Recordset; dispid 1610809392;
  1198.     procedure UpdateBatch(AffectRecords: AffectEnum); dispid 1035;
  1199.     procedure CancelBatch(AffectRecords: AffectEnum); dispid 1049;
  1200.     property CursorLocation: CursorLocationEnum dispid 1051;
  1201.     function NextRecordset(out RecordsAffected: OleVariant): _Recordset; dispid 1052;
  1202.     function Supports(CursorOptions: CursorOptionEnum): WordBool; dispid 1036;
  1203.     property Collect[Index: OleVariant]: OleVariant dispid -8;
  1204.     property MarshalOptions: MarshalOptionsEnum dispid 1053;
  1205.     procedure Find(const Criteria: WideString; SkipRecords: Integer; 
  1206.                    SearchDirection: SearchDirectionEnum; Start: OleVariant); dispid 1058;
  1207.     property Properties: Properties readonly dispid 500;
  1208.   end;
  1209.  
  1210. // *********************************************************************//
  1211. // Interface: Fields15
  1212. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1213. // GUID:      {00000506-0000-0010-8000-00AA006D2EA4}
  1214. // *********************************************************************//
  1215.   Fields15 = interface(_Collection)
  1216.     ['{00000506-0000-0010-8000-00AA006D2EA4}']
  1217.     function Get_Item(Index: OleVariant): Field; safecall;
  1218.     property Item[Index: OleVariant]: Field read Get_Item; default;
  1219.   end;
  1220.  
  1221. // *********************************************************************//
  1222. // DispIntf:  Fields15Disp
  1223. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1224. // GUID:      {00000506-0000-0010-8000-00AA006D2EA4}
  1225. // *********************************************************************//
  1226.   Fields15Disp = dispinterface
  1227.     ['{00000506-0000-0010-8000-00AA006D2EA4}']
  1228.     property Item[Index: OleVariant]: Field readonly dispid 0; default;
  1229.     property Count: Integer readonly dispid 1610743808;
  1230.     function _NewEnum: IUnknown; dispid -4;
  1231.     procedure Refresh; dispid 1610743810;
  1232.   end;
  1233.  
  1234. // *********************************************************************//
  1235. // Interface: Fields
  1236. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1237. // GUID:      {0000054D-0000-0010-8000-00AA006D2EA4}
  1238. // *********************************************************************//
  1239.   Fields = interface(Fields15)
  1240.     ['{0000054D-0000-0010-8000-00AA006D2EA4}']
  1241.     procedure Append(const Name: WideString; Type_: DataTypeEnum; DefinedSize: Integer; 
  1242.                      Attrib: FieldAttributeEnum); safecall;
  1243.     procedure Delete(Index: OleVariant); safecall;
  1244.   end;
  1245.  
  1246. // *********************************************************************//
  1247. // DispIntf:  FieldsDisp
  1248. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1249. // GUID:      {0000054D-0000-0010-8000-00AA006D2EA4}
  1250. // *********************************************************************//
  1251.   FieldsDisp = dispinterface
  1252.     ['{0000054D-0000-0010-8000-00AA006D2EA4}']
  1253.     procedure Append(const Name: WideString; Type_: DataTypeEnum; DefinedSize: Integer; 
  1254.                      Attrib: FieldAttributeEnum); dispid 1610874880;
  1255.     procedure Delete(Index: OleVariant); dispid 1610874881;
  1256.     property Item[Index: OleVariant]: Field readonly dispid 0; default;
  1257.     property Count: Integer readonly dispid 1610743808;
  1258.     function _NewEnum: IUnknown; dispid -4;
  1259.     procedure Refresh; dispid 1610743810;
  1260.   end;
  1261.  
  1262. // *********************************************************************//
  1263. // Interface: Field
  1264. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1265. // GUID:      {0000054C-0000-0010-8000-00AA006D2EA4}
  1266. // *********************************************************************//
  1267.   Field = interface(_ADO)
  1268.     ['{0000054C-0000-0010-8000-00AA006D2EA4}']
  1269.     function Get_ActualSize: Integer; safecall;
  1270.     function Get_Attributes: Integer; safecall;
  1271.     function Get_DefinedSize: Integer; safecall;
  1272.     function Get_Name: WideString; safecall;
  1273.     function Get_Type_: DataTypeEnum; safecall;
  1274.     function Get_Value: OleVariant; safecall;
  1275.     procedure Set_Value(pvar: OleVariant); safecall;
  1276.     function Get_Precision: Byte; safecall;
  1277.     function Get_NumericScale: Byte; safecall;
  1278.     procedure AppendChunk(Data: OleVariant); safecall;
  1279.     function GetChunk(Length: Integer): OleVariant; safecall;
  1280.     function Get_OriginalValue: OleVariant; safecall;
  1281.     function Get_UnderlyingValue: OleVariant; safecall;
  1282.     function Get_DataFormat: IUnknown; safecall;
  1283.     procedure Set_DataFormat(const ppiDF: IUnknown); safecall;
  1284.     procedure Set_Precision(pbPrecision: Byte); safecall;
  1285.     procedure Set_NumericScale(pbNumericScale: Byte); safecall;
  1286.     procedure Set_Type_(pDataType: DataTypeEnum); safecall;
  1287.     procedure Set_DefinedSize(pl: Integer); safecall;
  1288.     procedure Set_Attributes(pl: Integer); safecall;
  1289.     property ActualSize: Integer read Get_ActualSize;
  1290.     property Attributes: Integer read Get_Attributes write Set_Attributes;
  1291.     property DefinedSize: Integer read Get_DefinedSize write Set_DefinedSize;
  1292.     property Name: WideString read Get_Name;
  1293.     property Type_: DataTypeEnum read Get_Type_ write Set_Type_;
  1294.     property Value: OleVariant read Get_Value write Set_Value;
  1295.     property Precision: Byte read Get_Precision write Set_Precision;
  1296.     property NumericScale: Byte read Get_NumericScale write Set_NumericScale;
  1297.     property OriginalValue: OleVariant read Get_OriginalValue;
  1298.     property UnderlyingValue: OleVariant read Get_UnderlyingValue;
  1299.     property DataFormat: IUnknown read Get_DataFormat write Set_DataFormat;
  1300.   end;
  1301.  
  1302. // *********************************************************************//
  1303. // DispIntf:  FieldDisp
  1304. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1305. // GUID:      {0000054C-0000-0010-8000-00AA006D2EA4}
  1306. // *********************************************************************//
  1307.   FieldDisp = dispinterface
  1308.     ['{0000054C-0000-0010-8000-00AA006D2EA4}']
  1309.     property ActualSize: Integer readonly dispid 1109;
  1310.     property Attributes: Integer dispid 1036;
  1311.     property DefinedSize: Integer dispid 1103;
  1312.     property Name: WideString readonly dispid 1100;
  1313.     property Type_: DataTypeEnum dispid 1102;
  1314.     property Value: OleVariant dispid 0;
  1315.     property Precision: Byte dispid 1610809351;
  1316.     property NumericScale: Byte dispid 1610809352;
  1317.     procedure AppendChunk(Data: OleVariant); dispid 1107;
  1318.     function GetChunk(Length: Integer): OleVariant; dispid 1108;
  1319.     property OriginalValue: OleVariant readonly dispid 1104;
  1320.     property UnderlyingValue: OleVariant readonly dispid 1105;
  1321.     property DataFormat: IUnknown dispid 1610809357;
  1322.     property Properties: Properties readonly dispid 500;
  1323.   end;
  1324.  
  1325. // *********************************************************************//
  1326. // Interface: _Parameter
  1327. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1328. // GUID:      {0000050C-0000-0010-8000-00AA006D2EA4}
  1329. // *********************************************************************//
  1330.   _Parameter = interface(_ADO)
  1331.     ['{0000050C-0000-0010-8000-00AA006D2EA4}']
  1332.     function Get_Name: WideString; safecall;
  1333.     procedure Set_Name(const pbstr: WideString); safecall;
  1334.     function Get_Value: OleVariant; safecall;
  1335.     procedure Set_Value(pvar: OleVariant); safecall;
  1336.     function Get_Type_: DataTypeEnum; safecall;
  1337.     procedure Set_Type_(psDataType: DataTypeEnum); safecall;
  1338.     procedure Set_Direction(plParmDirection: ParameterDirectionEnum); safecall;
  1339.     function Get_Direction: ParameterDirectionEnum; safecall;
  1340.     procedure Set_Precision(pbPrecision: Byte); safecall;
  1341.     function Get_Precision: Byte; safecall;
  1342.     procedure Set_NumericScale(pbScale: Byte); safecall;
  1343.     function Get_NumericScale: Byte; safecall;
  1344.     procedure Set_Size(pl: Integer); safecall;
  1345.     function Get_Size: Integer; safecall;
  1346.     procedure AppendChunk(Val: OleVariant); safecall;
  1347.     function Get_Attributes: Integer; safecall;
  1348.     procedure Set_Attributes(plParmAttribs: Integer); safecall;
  1349.     property Name: WideString read Get_Name write Set_Name;
  1350.     property Value: OleVariant read Get_Value write Set_Value;
  1351.     property Type_: DataTypeEnum read Get_Type_ write Set_Type_;
  1352.     property Direction: ParameterDirectionEnum read Get_Direction write Set_Direction;
  1353.     property Precision: Byte read Get_Precision write Set_Precision;
  1354.     property NumericScale: Byte read Get_NumericScale write Set_NumericScale;
  1355.     property Size: Integer read Get_Size write Set_Size;
  1356.     property Attributes: Integer read Get_Attributes write Set_Attributes;
  1357.   end;
  1358.  
  1359. // *********************************************************************//
  1360. // DispIntf:  _ParameterDisp
  1361. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1362. // GUID:      {0000050C-0000-0010-8000-00AA006D2EA4}
  1363. // *********************************************************************//
  1364.   _ParameterDisp = dispinterface
  1365.     ['{0000050C-0000-0010-8000-00AA006D2EA4}']
  1366.     property Name: WideString dispid 1610809344;
  1367.     property Value: OleVariant dispid 0;
  1368.     property Type_: DataTypeEnum dispid 1610809348;
  1369.     property Direction: ParameterDirectionEnum dispid 1610809350;
  1370.     property Precision: Byte dispid 1610809352;
  1371.     property NumericScale: Byte dispid 1610809354;
  1372.     property Size: Integer dispid 1610809356;
  1373.     procedure AppendChunk(Val: OleVariant); dispid 1610809358;
  1374.     property Attributes: Integer dispid 1610809359;
  1375.     property Properties: Properties readonly dispid 500;
  1376.   end;
  1377.  
  1378. // *********************************************************************//
  1379. // Interface: Parameters
  1380. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1381. // GUID:      {0000050D-0000-0010-8000-00AA006D2EA4}
  1382. // *********************************************************************//
  1383.   Parameters = interface(_DynaCollection)
  1384.     ['{0000050D-0000-0010-8000-00AA006D2EA4}']
  1385.     function Get_Item(Index: OleVariant): _Parameter; safecall;
  1386.     property Item[Index: OleVariant]: _Parameter read Get_Item; default;
  1387.   end;
  1388.  
  1389. // *********************************************************************//
  1390. // DispIntf:  ParametersDisp
  1391. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1392. // GUID:      {0000050D-0000-0010-8000-00AA006D2EA4}
  1393. // *********************************************************************//
  1394.   ParametersDisp = dispinterface
  1395.     ['{0000050D-0000-0010-8000-00AA006D2EA4}']
  1396.     property Item[Index: OleVariant]: _Parameter readonly dispid 0; default;
  1397.     procedure Append(const Object_: IDispatch); dispid 1610809344;
  1398.     procedure Delete(Index: OleVariant); dispid 1610809345;
  1399.     property Count: Integer readonly dispid 1610743808;
  1400.     function _NewEnum: IUnknown; dispid -4;
  1401.     procedure Refresh; dispid 1610743810;
  1402.   end;
  1403.  
  1404. // *********************************************************************//
  1405. // Interface: _Command
  1406. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1407. // GUID:      {0000054E-0000-0010-8000-00AA006D2EA4}
  1408. // *********************************************************************//
  1409.   _Command = interface(_Command15)
  1410.     ['{0000054E-0000-0010-8000-00AA006D2EA4}']
  1411.     function Get_State: Integer; safecall;
  1412.     procedure Cancel; safecall;
  1413.     property State: Integer read Get_State;
  1414.   end;
  1415.  
  1416. // *********************************************************************//
  1417. // DispIntf:  _CommandDisp
  1418. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1419. // GUID:      {0000054E-0000-0010-8000-00AA006D2EA4}
  1420. // *********************************************************************//
  1421.   _CommandDisp = dispinterface
  1422.     ['{0000054E-0000-0010-8000-00AA006D2EA4}']
  1423.     property State: Integer readonly dispid 1610874880;
  1424.     procedure Cancel; dispid 1610874881;
  1425.     function ActiveConnection: _Connection; dispid 1610809344;
  1426.     property CommandText: WideString dispid 1610809347;
  1427.     property CommandTimeout: Integer dispid 1610809349;
  1428.     property Prepared: WordBool dispid 1610809351;
  1429.     function Execute(out RecordsAffected: OleVariant; var Parameters: OleVariant; Options: Integer): _Recordset; dispid 1610809353;
  1430.     function CreateParameter(const Name: WideString; Type_: DataTypeEnum; 
  1431.                              Direction: ParameterDirectionEnum; Size: Integer; Value: OleVariant): _Parameter; dispid 1610809354;
  1432.     property Parameters: Parameters readonly dispid 0;
  1433.     property CommandType: CommandTypeEnum dispid 1610809356;
  1434.     property Name: WideString dispid 1610809358;
  1435.     property Properties: Properties readonly dispid 500;
  1436.   end;
  1437.  
  1438. // *********************************************************************//
  1439. // Interface: ConnectionEventsVt
  1440. // Flags:     (16) Hidden
  1441. // GUID:      {00000402-0000-0010-8000-00AA006D2EA4}
  1442. // *********************************************************************//
  1443.   ConnectionEventsVt = interface(IUnknown)
  1444.     ['{00000402-0000-0010-8000-00AA006D2EA4}']
  1445.     function InfoMessage(const pError: Error; var adStatus: EventStatusEnum; 
  1446.                          const pConnection: _Connection): HResult; stdcall;
  1447.     function BeginTransComplete(TransactionLevel: Integer; const pError: Error; 
  1448.                                 var adStatus: EventStatusEnum; const pConnection: _Connection): HResult; stdcall;
  1449.     function CommitTransComplete(const pError: Error; var adStatus: EventStatusEnum; 
  1450.                                  const pConnection: _Connection): HResult; stdcall;
  1451.     function RollbackTransComplete(const pError: Error; var adStatus: EventStatusEnum; 
  1452.                                    const pConnection: _Connection): HResult; stdcall;
  1453.     function WillExecute(var Source: WideString; var CursorType: CursorTypeEnum; 
  1454.                          var LockType: LockTypeEnum; var Options: Integer; 
  1455.                          var adStatus: EventStatusEnum; const pCommand: _Command; 
  1456.                          const pRecordset: _Recordset; const pConnection: _Connection): HResult; stdcall;
  1457.     function ExecuteComplete(RecordsAffected: Integer; const pError: Error; 
  1458.                              var adStatus: EventStatusEnum; const pCommand: _Command; 
  1459.                              const pRecordset: _Recordset; const pConnection: _Connection): HResult; stdcall;
  1460.     function WillConnect(var ConnectionString: WideString; var UserID: WideString; 
  1461.                          var Password: WideString; var Options: Integer; 
  1462.                          var adStatus: EventStatusEnum; const pConnection: _Connection): HResult; stdcall;
  1463.     function ConnectComplete(const pError: Error; var adStatus: EventStatusEnum; 
  1464.                              const pConnection: _Connection): HResult; stdcall;
  1465.     function Disconnect(var adStatus: EventStatusEnum; const pConnection: _Connection): HResult; stdcall;
  1466.   end;
  1467.  
  1468. // *********************************************************************//
  1469. // Interface: RecordsetEventsVt
  1470. // Flags:     (16) Hidden
  1471. // GUID:      {00000403-0000-0010-8000-00AA006D2EA4}
  1472. // *********************************************************************//
  1473.   RecordsetEventsVt = interface(IUnknown)
  1474.     ['{00000403-0000-0010-8000-00AA006D2EA4}']
  1475.     function WillChangeField(cFields: Integer; Fields: OleVariant; var adStatus: EventStatusEnum; 
  1476.                              const pRecordset: _Recordset): HResult; stdcall;
  1477.     function FieldChangeComplete(cFields: Integer; Fields: OleVariant; const pError: Error; 
  1478.                                  var adStatus: EventStatusEnum; const pRecordset: _Recordset): HResult; stdcall;
  1479.     function WillChangeRecord(adReason: EventReasonEnum; cRecords: Integer; 
  1480.                               var adStatus: EventStatusEnum; const pRecordset: _Recordset): HResult; stdcall;
  1481.     function RecordChangeComplete(adReason: EventReasonEnum; cRecords: Integer; 
  1482.                                   const pError: Error; var adStatus: EventStatusEnum; 
  1483.                                   const pRecordset: _Recordset): HResult; stdcall;
  1484.     function WillChangeRecordset(adReason: EventReasonEnum; var adStatus: EventStatusEnum; 
  1485.                                  const pRecordset: _Recordset): HResult; stdcall;
  1486.     function RecordsetChangeComplete(adReason: EventReasonEnum; const pError: Error; 
  1487.                                      var adStatus: EventStatusEnum; const pRecordset: _Recordset): HResult; stdcall;
  1488.     function WillMove(adReason: EventReasonEnum; var adStatus: EventStatusEnum; 
  1489.                       const pRecordset: _Recordset): HResult; stdcall;
  1490.     function MoveComplete(adReason: EventReasonEnum; const pError: Error; 
  1491.                           var adStatus: EventStatusEnum; const pRecordset: _Recordset): HResult; stdcall;
  1492.     function EndOfRecordset(var fMoreData: WordBool; var adStatus: EventStatusEnum; 
  1493.                             const pRecordset: _Recordset): HResult; stdcall;
  1494.     function FetchProgress(Progress: Integer; MaxProgress: Integer; var adStatus: EventStatusEnum; 
  1495.                            const pRecordset: _Recordset): HResult; stdcall;
  1496.     function FetchComplete(const pError: Error; var adStatus: EventStatusEnum; 
  1497.                            const pRecordset: _Recordset): HResult; stdcall;
  1498.   end;
  1499.  
  1500. // *********************************************************************//
  1501. // DispIntf:  ConnectionEvents
  1502. // Flags:     (4096) Dispatchable
  1503. // GUID:      {00000400-0000-0010-8000-00AA006D2EA4}
  1504. // *********************************************************************//
  1505.   ConnectionEvents = dispinterface
  1506.     ['{00000400-0000-0010-8000-00AA006D2EA4}']
  1507.     procedure InfoMessage(const pError: Error; var adStatus: EventStatusEnum; 
  1508.                           const pConnection: _Connection); dispid 0;
  1509.     procedure BeginTransComplete(TransactionLevel: Integer; const pError: Error; 
  1510.                                  var adStatus: EventStatusEnum; const pConnection: _Connection); dispid 1;
  1511.     procedure CommitTransComplete(const pError: Error; var adStatus: EventStatusEnum; 
  1512.                                   const pConnection: _Connection); dispid 3;
  1513.     procedure RollbackTransComplete(const pError: Error; var adStatus: EventStatusEnum; 
  1514.                                     const pConnection: _Connection); dispid 2;
  1515.     procedure WillExecute(var Source: WideString; var CursorType: CursorTypeEnum; 
  1516.                           var LockType: LockTypeEnum; var Options: Integer; 
  1517.                           var adStatus: EventStatusEnum; const pCommand: _Command; 
  1518.                           const pRecordset: _Recordset; const pConnection: _Connection); dispid 4;
  1519.     procedure ExecuteComplete(RecordsAffected: Integer; const pError: Error; 
  1520.                               var adStatus: EventStatusEnum; const pCommand: _Command; 
  1521.                               const pRecordset: _Recordset; const pConnection: _Connection); dispid 5;
  1522.     procedure WillConnect(var ConnectionString: WideString; var UserID: WideString; 
  1523.                           var Password: WideString; var Options: Integer; 
  1524.                           var adStatus: EventStatusEnum; const pConnection: _Connection); dispid 6;
  1525.     procedure ConnectComplete(const pError: Error; var adStatus: EventStatusEnum; 
  1526.                               const pConnection: _Connection); dispid 7;
  1527.     procedure Disconnect(var adStatus: EventStatusEnum; const pConnection: _Connection); dispid 8;
  1528.   end;
  1529.  
  1530. // *********************************************************************//
  1531. // DispIntf:  RecordsetEvents
  1532. // Flags:     (4096) Dispatchable
  1533. // GUID:      {00000266-0000-0010-8000-00AA006D2EA4}
  1534. // *********************************************************************//
  1535.   RecordsetEvents = dispinterface
  1536.     ['{00000266-0000-0010-8000-00AA006D2EA4}']
  1537.     procedure WillChangeField(cFields: Integer; Fields: OleVariant; var adStatus: EventStatusEnum; 
  1538.                               const pRecordset: _Recordset); dispid 9;
  1539.     procedure FieldChangeComplete(cFields: Integer; Fields: OleVariant; const pError: Error; 
  1540.                                   var adStatus: EventStatusEnum; const pRecordset: _Recordset); dispid 10;
  1541.     procedure WillChangeRecord(adReason: EventReasonEnum; cRecords: Integer; 
  1542.                                var adStatus: EventStatusEnum; const pRecordset: _Recordset); dispid 11;
  1543.     procedure RecordChangeComplete(adReason: EventReasonEnum; cRecords: Integer; 
  1544.                                    const pError: Error; var adStatus: EventStatusEnum; 
  1545.                                    const pRecordset: _Recordset); dispid 12;
  1546.     procedure WillChangeRecordset(adReason: EventReasonEnum; var adStatus: EventStatusEnum; 
  1547.                                   const pRecordset: _Recordset); dispid 13;
  1548.     procedure RecordsetChangeComplete(adReason: EventReasonEnum; const pError: Error; 
  1549.                                       var adStatus: EventStatusEnum; const pRecordset: _Recordset); dispid 14;
  1550.     procedure WillMove(adReason: EventReasonEnum; var adStatus: EventStatusEnum; 
  1551.                        const pRecordset: _Recordset); dispid 15;
  1552.     procedure MoveComplete(adReason: EventReasonEnum; const pError: Error; 
  1553.                            var adStatus: EventStatusEnum; const pRecordset: _Recordset); dispid 16;
  1554.     procedure EndOfRecordset(var fMoreData: WordBool; var adStatus: EventStatusEnum; 
  1555.                              const pRecordset: _Recordset); dispid 17;
  1556.     procedure FetchProgress(Progress: Integer; MaxProgress: Integer; var adStatus: EventStatusEnum; 
  1557.                             const pRecordset: _Recordset); dispid 18;
  1558.     procedure FetchComplete(const pError: Error; var adStatus: EventStatusEnum; 
  1559.                             const pRecordset: _Recordset); dispid 19;
  1560.   end;
  1561.  
  1562. // *********************************************************************//
  1563. // Interface: ADOConnectionConstruction15
  1564. // Flags:     (512) Restricted
  1565. // GUID:      {00000516-0000-0010-8000-00AA006D2EA4}
  1566. // *********************************************************************//
  1567.   ADOConnectionConstruction15 = interface(IUnknown)
  1568.     ['{00000516-0000-0010-8000-00AA006D2EA4}']
  1569.     function Get_DSO(out ppDSO: IUnknown): HResult; stdcall;
  1570.     function Get_Session(out ppSession: IUnknown): HResult; stdcall;
  1571.     function WrapDSOandSession(const pDSO: IUnknown; const pSession: IUnknown): HResult; stdcall;
  1572.   end;
  1573.  
  1574. // *********************************************************************//
  1575. // Interface: ADOConnectionConstruction
  1576. // Flags:     (512) Restricted
  1577. // GUID:      {00000551-0000-0010-8000-00AA006D2EA4}
  1578. // *********************************************************************//
  1579.   ADOConnectionConstruction = interface(ADOConnectionConstruction15)
  1580.     ['{00000551-0000-0010-8000-00AA006D2EA4}']
  1581.   end;
  1582.  
  1583. // *********************************************************************//
  1584. // Interface: ADOCommandConstruction
  1585. // Flags:     (512) Restricted
  1586. // GUID:      {00000517-0000-0010-8000-00AA006D2EA4}
  1587. // *********************************************************************//
  1588.   ADOCommandConstruction = interface(IUnknown)
  1589.     ['{00000517-0000-0010-8000-00AA006D2EA4}']
  1590.     function Get_OLEDBCommand(out ppOLEDBCommand: IUnknown): HResult; stdcall;
  1591.     function Set_OLEDBCommand(const ppOLEDBCommand: IUnknown): HResult; stdcall;
  1592.   end;
  1593.  
  1594. // *********************************************************************//
  1595. // Interface: ADORecordsetConstruction
  1596. // Flags:     (4608) Restricted Dispatchable
  1597. // GUID:      {00000283-0000-0010-8000-00AA006D2EA4}
  1598. // *********************************************************************//
  1599.   ADORecordsetConstruction = interface(IDispatch)
  1600.     ['{00000283-0000-0010-8000-00AA006D2EA4}']
  1601.     function Get_Rowset(out ppRowset: IUnknown): HResult; stdcall;
  1602.     function Set_Rowset(const ppRowset: IUnknown): HResult; stdcall;
  1603.     function Get_Chapter(out plChapter: Integer): HResult; stdcall;
  1604.     function Set_Chapter(plChapter: Integer): HResult; stdcall;
  1605.     function Get_RowPosition(out ppRowPos: IUnknown): HResult; stdcall;
  1606.     function Set_RowPosition(const ppRowPos: IUnknown): HResult; stdcall;
  1607.   end;
  1608.  
  1609. // *********************************************************************//
  1610. // Interface: Field15
  1611. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1612. // GUID:      {00000505-0000-0010-8000-00AA006D2EA4}
  1613. // *********************************************************************//
  1614.   Field15 = interface(_ADO)
  1615.     ['{00000505-0000-0010-8000-00AA006D2EA4}']
  1616.     function Get_ActualSize: Integer; safecall;
  1617.     function Get_Attributes: Integer; safecall;
  1618.     function Get_DefinedSize: Integer; safecall;
  1619.     function Get_Name: WideString; safecall;
  1620.     function Get_Type_: DataTypeEnum; safecall;
  1621.     function Get_Value: OleVariant; safecall;
  1622.     procedure Set_Value(pvar: OleVariant); safecall;
  1623.     function Get_Precision: Byte; safecall;
  1624.     function Get_NumericScale: Byte; safecall;
  1625.     procedure AppendChunk(Data: OleVariant); safecall;
  1626.     function GetChunk(Length: Integer): OleVariant; safecall;
  1627.     function Get_OriginalValue: OleVariant; safecall;
  1628.     function Get_UnderlyingValue: OleVariant; safecall;
  1629.     property ActualSize: Integer read Get_ActualSize;
  1630.     property Attributes: Integer read Get_Attributes;
  1631.     property DefinedSize: Integer read Get_DefinedSize;
  1632.     property Name: WideString read Get_Name;
  1633.     property Type_: DataTypeEnum read Get_Type_;
  1634.     property Value: OleVariant read Get_Value write Set_Value;
  1635.     property Precision: Byte read Get_Precision;
  1636.     property NumericScale: Byte read Get_NumericScale;
  1637.     property OriginalValue: OleVariant read Get_OriginalValue;
  1638.     property UnderlyingValue: OleVariant read Get_UnderlyingValue;
  1639.   end;
  1640.  
  1641. // *********************************************************************//
  1642. // DispIntf:  Field15Disp
  1643. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1644. // GUID:      {00000505-0000-0010-8000-00AA006D2EA4}
  1645. // *********************************************************************//
  1646.   Field15Disp = dispinterface
  1647.     ['{00000505-0000-0010-8000-00AA006D2EA4}']
  1648.     property ActualSize: Integer readonly dispid 1109;
  1649.     property Attributes: Integer readonly dispid 1036;
  1650.     property DefinedSize: Integer readonly dispid 1103;
  1651.     property Name: WideString readonly dispid 1100;
  1652.     property Type_: DataTypeEnum readonly dispid 1102;
  1653.     property Value: OleVariant dispid 0;
  1654.     property Precision: Byte readonly dispid 1610809351;
  1655.     property NumericScale: Byte readonly dispid 1610809352;
  1656.     procedure AppendChunk(Data: OleVariant); dispid 1107;
  1657.     function GetChunk(Length: Integer): OleVariant; dispid 1108;
  1658.     property OriginalValue: OleVariant readonly dispid 1104;
  1659.     property UnderlyingValue: OleVariant readonly dispid 1105;
  1660.     property Properties: Properties readonly dispid 500;
  1661.   end;
  1662.  
  1663.   CoConnection = class
  1664.     class function Create: _Connection;
  1665.     class function CreateRemote(const MachineName: string): _Connection;
  1666.   end;
  1667.  
  1668.   CoCommand = class
  1669.     class function Create: _Command;
  1670.     class function CreateRemote(const MachineName: string): _Command;
  1671.   end;
  1672.  
  1673.   CoRecordset = class
  1674.     class function Create: _Recordset;
  1675.     class function CreateRemote(const MachineName: string): _Recordset;
  1676.   end;
  1677.  
  1678.   CoParameter = class
  1679.     class function Create: _Parameter;
  1680.     class function CreateRemote(const MachineName: string): _Parameter;
  1681.   end;
  1682.  
  1683. implementation
  1684.  
  1685. uses ComObj;
  1686.  
  1687. class function CoConnection.Create: _Connection;
  1688. begin
  1689.   Result := CreateComObject(CLASS_Connection) as _Connection;
  1690. end;
  1691.  
  1692. class function CoConnection.CreateRemote(const MachineName: string): _Connection;
  1693. begin
  1694.   Result := CreateRemoteComObject(MachineName, CLASS_Connection) as _Connection;
  1695. end;
  1696.  
  1697. class function CoCommand.Create: _Command;
  1698. begin
  1699.   Result := CreateComObject(CLASS_Command) as _Command;
  1700. end;
  1701.  
  1702. class function CoCommand.CreateRemote(const MachineName: string): _Command;
  1703. begin
  1704.   Result := CreateRemoteComObject(MachineName, CLASS_Command) as _Command;
  1705. end;
  1706.  
  1707. class function CoRecordset.Create: _Recordset;
  1708. begin
  1709.   Result := CreateComObject(CLASS_Recordset) as _Recordset;
  1710. end;
  1711.  
  1712. class function CoRecordset.CreateRemote(const MachineName: string): _Recordset;
  1713. begin
  1714.   Result := CreateRemoteComObject(MachineName, CLASS_Recordset) as _Recordset;
  1715. end;
  1716.  
  1717. class function CoParameter.Create: _Parameter;
  1718. begin
  1719.   Result := CreateComObject(CLASS_Parameter) as _Parameter;
  1720. end;
  1721.  
  1722. class function CoParameter.CreateRemote(const MachineName: string): _Parameter;
  1723. begin
  1724.   Result := CreateRemoteComObject(MachineName, CLASS_Parameter) as _Parameter;
  1725. end;
  1726.  
  1727. end.
  1728.